package com.zhiche.lisa.bms.service.waybill;

import com.baomidou.mybatisplus.service.IService;
import com.zhiche.lisa.bms.dao.model.waybill.WaybillState;

import java.util.List;

/**
 * <p>
 * 运单状态同步表 服务类
 * </p>
 *
 * @author liuanshun
 * @since 2018-12-07
 */
public interface WaybillStateService extends IService<WaybillState> {
    /**
     * 根据指令号获取运单状态同步表<type>单个</type>
     *
     * @param attribute16
     * @return
     */
    List<WaybillState> selectWaybillStateByAttribute(String attribute16);

    /**
     * 根据指令号获取运单状态同步表<type>批量</type>
     *
     * @param attribute16
     * @return
     */
    List<WaybillState> selectWaybillStateByAttributes(List<String> attribute16);

    /**
     * 根据系统运单号获取运单状态同步表<type>单个</type>
     *
     * @param ordeReleaseGid
     * @return
     */
    List<WaybillState> selectWaybillStateByOdrdeReleaseGid(String ordeReleaseGid);

    /**
     * 根据系统运单号获取运单状态同步表<type>批量</type>
     *
     * @param ordeReleaseGids
     * @return
     */
    List<WaybillState> selectWaybillStateByOdrdeReleaseGids(List<String> ordeReleaseGids);

    /**
     * 查询通过验证的状态同步表
     *
     * @param attribute16
     * @return
     */
    List<WaybillState> selectCheckedWaybillStateByAttribute(String attribute16);

    List<WaybillState> selectCheckedWaybillStateByAttributes(List<String> attribute16);

    /**
     * 查询符合匹配结果的attribute16
     *
     * @param attribute16 检索的attribute16
     * @return
     */
    List<String> selectCheckedAttribute(List<String> attribute16);

    /**
     * 查询符合匹配结果的ordeReleaseGids
     *
     * @param ordeReleaseGids 检索的ordeReleaseGids
     * @return
     */
    List<String> selectCheckedOrderReleaseGid(List<String> ordeReleaseGids);
}
